perm filename SHFT.FAI[NEW,LCS] blob sn#559307 filedate 1981-01-27 generic text, type T, neo UTF8
00004	; THIS PACKS NUMBERS IN BITS AS FOLLOWS:
00007	;   4  /  5  /  3  /  24
00008	; WDCNT/ P1 / P2  / P3
00009	;  THEN IT UNPACKS THEM.
00010	IA:	BLOCK 200
00055	BEG:
00100	SH:	MOVE 11,[7.0]
00200		MOVE 12,[1.0]
00300		MOVE 13,[4.0]
00400		MOVE 14,[75.6234]
00500	
00600	A:	MOVEI 1,12
00700		MOVEI 3,0	;I ARRAY COUNTER
01100		MOVE 7,2(1)	;P3
01200		FMPR 7,[1000.00]
01300		KIFIX 7,7	;MAKE P3 INTEGER*1000
01400	B:	LSHC 7,-=24	;SHIFT P3 INTO AC8
01500		KIFIX 7,1(1)	;GET STAFF
01600		LSHC 7,-3	;SHIFT IT
01700		KIFIX 7,(1)	;GET CODE
01800	C:	LSHC 7,-5	;USES 5 BITS
01900		KIFIX 7,-1(1)	;WD CNT
02000		LSHC 7,-4	; USES 4 BITS
02100		MOVEI 1,IA
02200	D:	ADD 1,3
02300		MOVEM 8,(1)
02400	E:	MOVE 1,IA	;GET LOC. OF ARRAY
02500		LSHC 1,-=24	;GET P3
02550		LSH 2,-=12
02600		FLTR 2,2
02700		FDVR 2,[1000.00]
02800		MOVEM 2,7	;PUT P3 INTO AC7
02900		LSHC 1,-3	;GET P2
02925		LSH 2,-=33
02950		FLTR 2,2
03000		MOVEM 2,6
03100		LSHC 1,-5	;CODE
03125		LSH 2,-=31
03150		FLTR 2,2
03200		MOVEM 2,5
03400		LSHC 1,-4	;GET WD CNT
03412		LSH 2,-=32
03450		FLTR 2,2
03500		MOVEM 2,4
03550	EN:	0
03600		END BEG